@echo off
echo =========================================
echo 🔧 修复 Gradle 网络和 TLS 问题（增强版）
echo =========================================

echo.
echo 🧹 第1步: 清理所有缓存...
echo 🧼 清理 Flutter 缓存...
call flutter clean
if %ERRORLEVEL% neq 0 (
    echo ❌ Flutter clean 失败
) else (
    echo ✅ Flutter clean 完成
)

echo.
echo 🧼 清理 Gradle 缓存...
cd android
call gradlew clean
if %ERRORLEVEL% neq 0 (
    echo ❌ Gradle clean 失败
) else (
    echo ✅ Gradle clean 完成
)
cd ..

echo.
echo 🧼 删除所有构建缓存文件夹...
if exist "build" rmdir /s /q "build"
if exist "android\build" rmdir /s /q "android\build"
if exist "android\.gradle" rmdir /s /q "android\.gradle"
if exist ".dart_tool" rmdir /s /q ".dart_tool"
if exist "%USERPROFILE%\.gradle\caches" rmdir /s /q "%USERPROFILE%\.gradle\caches"
echo ✅ 所有缓存文件夹清理完成

echo.
echo 🔧 第2步: 配置Gradle Daemon停止和重启...
cd android
call gradlew --stop
timeout /t 2 /nobreak >nul
echo ✅ Gradle Daemon 已停止

echo.
echo 📦 第3步: 重新获取 Flutter 依赖...
cd ..
call flutter pub get
if %ERRORLEVEL% neq 0 (
    echo ❌ flutter pub get 失败
) else (
    echo ✅ flutter pub get 完成
)

echo.
echo 🔧 第4步: 强制刷新 Gradle Wrapper...
cd android
call gradlew wrapper --gradle-version=8.9 --distribution-type=all --no-daemon
if %ERRORLEVEL% neq 0 (
    echo ❌ Gradle wrapper 刷新失败
) else (
    echo ✅ Gradle wrapper 刷新完成
)

echo.
echo 🌐 第5步: 测试网络连接...
echo 📡 测试 Flutter 仓库连接...
ping -n 2 storage.flutter-io.cn >nul
if %ERRORLEVEL% equ 0 (
    echo ✅ Flutter CN 仓库连通正常
) else (
    echo ⚠️ Flutter CN 仓库连接可能有问题，将使用其他镜像
)

echo.
echo 🏗️ 第6步: 预热依赖下载（使用增强网络配置）...
call gradlew --refresh-dependencies --no-build-cache --recompile-scripts dependencies
if %ERRORLEVEL% neq 0 (
    echo ⚠️ 依赖预热部分失败，这是正常的，继续下一步
) else (
    echo ✅ 依赖预热完成
)

echo.
echo 🚀 第7步: 尝试构建应用...
call gradlew --refresh-dependencies assembleDebug
if %ERRORLEVEL% neq 0 (
    echo ⚠️ 初始构建失败，这可能是正常的，请尝试运行 flutter run
) else (
    echo ✅ 构建成功！
)
cd ..

echo.
echo =========================================
echo ✅ 增强修复步骤完成！
echo =========================================
echo.
echo 🎯 修复内容包括:
echo    ✓ 增强的TLS协议支持 (TLSv1-1.3)
echo    ✓ 多重SSL绕过配置
echo    ✓ 增强的网络重试机制
echo    ✓ 多个Flutter仓库镜像
echo    ✓ 国内CDN加速镜像
echo    ✓ DNS和网络栈优化
echo.
echo 🚀 现在可以尝试运行应用:
echo    flutter run
echo    或者: flutter run --debug
echo.
echo 📝 如果还有问题，请检查:
echo    1. 网络连接是否正常
echo    2. 防火墙或杀毒软件是否阻止了网络访问  
echo    3. 公司网络是否需要代理设置
echo    4. 尝试使用手机热点网络测试
echo.
pause
